package com.ITArmy.dao;

import com.ITArmy.beans.Praise;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface PraiseMapper {
    int deleteByPrimaryKey(Long pId);

    int insert(Praise record);

    int insertSelective(Praise record);

    Praise selectByPrimaryKey(Long pId);

    int updateByPrimaryKeySelective(Praise record);

    int updateByPrimaryKey(Praise record);

    //根据用户的id遍历所有的喜欢的内容，点赞的内容

    List<Praise> selectAllLikeByUid(long uId);

    //统计用户的获赞量

    List<Praise> countPraise(long uId);

    //根据用户id和博客id获取点赞信息

    Praise selectPraise(@Param("uId") long uId, @Param("blogId") long blogId);

    //根据用户id和问题id获取点赞信息
    Praise selectQuestionPraise(@Param("uId") long uId, @Param("qid") long qid);

    //根据用户id和评论id获取点赞信息

    Praise selectPraiseByCommentAndUid(@Param("uId") long uId, @Param("commentId") long commentId);

    //统计博客的点赞数量

    List<Praise> selectBlogPraiseCount(Long bId);


    /**
     * 删除博客id对应的所有点赞信息
     *
     * @param bid bid
     * @return int
     */
    int deletePraiseByBid(long bid);

    /**
     * 通过评论id查找点赞信息
     *
     * @param cid
     * @return
     */
    Praise selecePraiseByCid(long cid);

    /**
     * 通过博客id查找点赞信息
     *
     * @param bid bid
     * @return
     */
    Praise selecePraiseByBid(long bid);

    int praiseCount(long uid);

}